package com.bjh.service;

import java.util.List;
import java.util.Map;

public interface BusinessService {
    /**
     * 根据代理商id获取分组
     * @param params 相关参数
     * @return {@link List}
     * @throws Exception Exception
     */
    Map<String, Object> getGroupByAgentId (Map<String, Object> params) throws Exception;

    /**
     * 根据id查询分组详情
     * @param id 分组id
     * @return {@link Map}
     * @throws Exception Exception
     */
    Map<String, Object> getGroupById (Long id) throws Exception;

    /**
     * 编辑分组
     * @param params 相关参数
     * @throws Exception Exception
     */
    void editGroup (Map<String, Object> params) throws Exception;

    /**
     * 根据分组id获取商户数量
     * @param id 分组id
     * @return {@link Long}
     * @throws Exception Exception
     */
    Long getBusinessCountById(Long id) throws Exception;

    /**
     * 删除分组
     * @param id 分组id
     * @throws Exception Exception
     */
    void deleteGroup (Long id) throws Exception;

    /**
     * 根据代理商id获取商户列表
     * @param params 相关参数
     * @return {@link Map}
     * @throws Exception Exception
     */
    Map<String, Object> getBusinessByAgentId (Map<String, Object> params) throws Exception;

    /**
     * 编辑商户
     * @param params 相关参数
     * @throws Exception Exception
     */
    void editBusiness (Map<String, Object> params) throws Exception;

    /**
     * 获取分组选项
     * @param agentId 代理商id
     * @return {@link List}
     * @throws Exception Exception
     */
    List<?> getGroupOption (Long agentId) throws Exception;
}
